哈囉,你好。
這個系列文章是我閱讀「忍者:JavaScript 開發技巧探秘(第二版)」的讀書心得,我期待點進來看文章的你已經是個有點經驗的開發者,原生 JavaScript 對你不是難事。你和我一樣對於 ES6 非常興奮,期待瀏覽器完全支援的那一天快快到來。
你用過目前熱門的前端框架,發現框架之間有幾分相似,但是卻不太了解它們之間決定性差別的原因。反正看專案需要就學什麼,久了開始感到疲累。
我是侑龍,在前端開發已經工作六年以上。上面是我最近幾年的心路歷程。明明當時因為覺得自己是視覺系動物,才選擇踏入前端開發,藉此避開程式邏輯和迴圈的荼毒,以為從此只要注意畫面美觀和易用性就好。沒想到瀏覽器功能逐漸強大,網站逐漸成為應用程式,程式設計在前端開發愈來愈重要,學會 JavaScript 成為了前端開發者的必要挑戰,不得不面對它。
這個系列文章希望能以簡單易懂的方式,一天一個主題,帶領 JavaScript 小嫩嫩成為中堅好手。
至少未來接手複雜的程式碼不會驚慌失措,知道運用哪些 JavaScript 的核心特性檢驗除錯。
遇到新的框架或函式庫,不會再翻白眼自嘆又要重新學造輪子的方法,明白這些都是 JavaScript 基礎原則的擴充,新技術只是用另一個形式來解決問題,本質上還是 JavaScript。
下一篇我們就會進入採討網頁的生命週期,看看從輸入網址到開始使用網頁中間過程中發生了什麼事,瀏覽器是怎麼把 HTML、CSS、JavaScript 變成網頁的。
接著我們會用很大的篇幅來理解 JavaScript 的核心機制:函式,閉包,物件,原型,還有 ES6 的新功能生成器、約定等等。
最後我們回到瀏覽器,搞懂 DOM 和事件迴圈。
如果你喜歡這樣的內容,別忘了按下訂閱 並加開小鈴噹 。
這幾年的 JavaScript 開發者是幸運的,經過幾年網頁應用程式化之後,開發網頁應用的流程也回頭影響桌面軟體。
一些框架讓我們可以在平台的應用程式使用封裝的瀏覽器來產生畫面,並且利用網頁的 API 去對應平台的 API。
於是乎 JavaScript 的用途大增。像是 Electron 能把瀏覽器包裝成桌面應用程式,React Native 能製作行動裝置的應用程式,Node.js 能開發伺服器端的系統應用程式,等等。
只要深入的了解 JavaScript 的基礎原則,並具備核心API的相關知識,你就幾乎能開發出任何想得到的應用程式。